// SHLoadAssignStratigy.h: interface for the SHLoadAssignStratigy class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SHLOADASSIGNSTRATIGY_H__FB462FA6_3CD6_4A0E_BBE4_E2BABB22AB01__INCLUDED_)
#define AFX_SHLOADASSIGNSTRATIGY_H__FB462FA6_3CD6_4A0E_BBE4_E2BABB22AB01__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "RegisterObject.h"
#include "SupportHanger.h"

class SHLoadAssignInfo;

class SHLoadAssignStratigy : public RegisterObject<SHLoadAssignStratigy, SHLoadAssignInfo> 
{
	DECLARE_DYNAMIC_EX(SHLoadAssignStratigy)
public:
	enum{
		eONESTRING};

public:
	SHLoadAssignStratigy();
	virtual ~SHLoadAssignStratigy();

public:
	void AttachToSH(SupportHanger* pSH){
		ASSERT(pSH);
		m_pSH = pSH;
	}

public:
	virtual BOOL Execute() = 0;

protected:
	SupportHanger* GetSH(){
		return m_pSH;
	}

private:
	SupportHanger* m_pSH;
};

#endif // !defined(AFX_SHLOADASSIGNSTRATIGY_H__FB462FA6_3CD6_4A0E_BBE4_E2BABB22AB01__INCLUDED_)
